package com.sgs.carbon.web.modules.common.convert.permission;

import com.sgs.carbon.web.modules.common.controller.permission.vo.role.SysRoleCreateReqVO;
import com.sgs.carbon.web.modules.common.controller.permission.vo.role.SysRoleExcelVO;
import com.sgs.carbon.web.modules.common.controller.permission.vo.role.SysRoleRespVO;
import com.sgs.carbon.web.modules.common.controller.permission.vo.role.SysRoleSimpleRespVO;
import com.sgs.carbon.web.modules.common.controller.permission.vo.role.SysRoleUpdateReqVO;
import com.sgs.carbon.web.modules.common.dal.dataobject.permission.SysRoleDO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;

import java.util.List;

/**
 * @see <a href="https://github.com/mapstruct/mapstruct"><b>mapstruct</b></a>
 *
 * @author Dave Liu
 * @date 2021-10-06
 */
@Mapper
public interface SysRoleConvert {

    SysRoleConvert INSTANCE = Mappers.getMapper(SysRoleConvert.class);

    SysRoleDO convert(SysRoleUpdateReqVO bean);

    SysRoleRespVO convert(SysRoleDO bean);

    SysRoleDO convert(SysRoleCreateReqVO bean);

    List<SysRoleSimpleRespVO> convertList02(List<SysRoleDO> list);

    List<SysRoleExcelVO> convertList03(List<SysRoleDO> list);

}
